/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package wasolicitudesfiec.consultas.apertura;
import entidad.apertura.Solicitudaperturatopico;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Vector;
/**
 *
 * @author kabad
 */
public class ConsultasSolicitudaperturatopico{
private Connection con;

public Solicitudaperturatopico HLnuevoSolicitudaperturatopico(Solicitudaperturatopico val) throws SQLException{
return nuevoSolicitudaperturatopico(val.getEstado(), val.getFechacreacion(), val.getFechamodificacion(), val.getFkIdDecano(), val.getFkIdEvaluador1(), val.getFkIdEvaluador2(), val.getFkIdEvaluador3(), val.getFkIdProfesor(), val.getFkParent(), val.getInforme1(), val.getInforme2(), val.getInforme3(), val.getNombreArchivo(), val.getNombreinstanciaproceso(), val.getObservacionDecano(), val.getObservacionEvaluador1(), val.getObservacionEvaluador2(), val.getObservacionEvaluador3(), val.getObservacionProfesor(), val.getPathArchivoAdjunto(), val.getResolucion(), val.getTemaTopico(), val.getResultadoResolucion(), val.getComentarioResolucion());
}

public Solicitudaperturatopico leerSolicitudaperturatopico(int idSolicitudApertura) throws SQLException{
Solicitudaperturatopico reg=new Solicitudaperturatopico();

PreparedStatement proc=con.prepareStatement(
"call leerSolicitudaperturatopico(?) ");
proc.setInt(1, idSolicitudApertura);
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setEstado(rs.getString(1));
reg.setFechacreacion(rs.getTimestamp(2));
reg.setFechamodificacion(rs.getTimestamp(3));
reg.setFechacreacion(rs.getTimestamp(2));
reg.setFechamodificacion(rs.getTimestamp(3));
reg.setFkIdDecano(rs.getInt(4));
reg.setFkIdEvaluador1(rs.getInt(5));
reg.setFkIdEvaluador2(rs.getInt(6));
reg.setFkIdEvaluador3(rs.getInt(7));
reg.setFkIdProfesor(rs.getInt(8));
reg.setFkParent(rs.getInt(9));
reg.setIdSolicitudApertura(rs.getInt(10));
reg.setInforme1(rs.getString(11));
reg.setInforme2(rs.getString(12));
reg.setInforme3(rs.getString(13));
reg.setNombreArchivo(rs.getString(14));
reg.setNombreinstanciaproceso(rs.getString(15));
reg.setObservacionDecano(rs.getString(16));
reg.setObservacionEvaluador1(rs.getString(17));
reg.setObservacionEvaluador2(rs.getString(18));
reg.setObservacionEvaluador3(rs.getString(19));
reg.setObservacionProfesor(rs.getString(20));
reg.setPathArchivoAdjunto(rs.getString(21));
reg.setResolucion(rs.getString(22));
reg.setTemaTopico(rs.getString(23));
reg.setResultadoResolucion(rs.getString(24));
reg.setComentarioResolucion(rs.getString(25));

}else reg=null;
return reg;


}

public Solicitudaperturatopico nuevoSolicitudaperturatopico(String estado, Timestamp fechacreacion, Timestamp fechamodificacion, int fkIdDecano, 
        int fkIdEvaluador1, int fkIdEvaluador2, int fkIdEvaluador3, int fkIdProfesor, int fkParent, String informe1, String informe2, 
        String informe3, String nombreArchivo, String nombreinstanciaproceso, String observacionDecano, String observacionEvaluador1, 
        String observacionEvaluador2, String observacionEvaluador3, String observacionProfesor, String pathArchivoAdjunto, String resolucion,
        String temaTopico, String resultadoResolucion, String comentarioResolucion) throws SQLException{
Solicitudaperturatopico reg=new Solicitudaperturatopico();

PreparedStatement proc=con.prepareStatement(
"call nuevoSolicitudaperturatopico(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) ");
proc.setString(1, estado);
proc.setTimestamp(2, fechacreacion);
proc.setTimestamp(3, fechamodificacion);
proc.setInt(4, fkIdDecano);
proc.setInt(5, fkIdEvaluador1);
proc.setInt(6, fkIdEvaluador2);
proc.setInt(7, fkIdEvaluador3);
proc.setInt(8, fkIdProfesor);
proc.setInt(9, fkParent);
proc.setString(10, informe1);
proc.setString(11, informe2);
proc.setString(12, informe3);
proc.setString(13, nombreArchivo);
proc.setString(14, nombreinstanciaproceso);
proc.setString(15, observacionDecano);
proc.setString(16, observacionEvaluador1);
proc.setString(17, observacionEvaluador2);
proc.setString(18, observacionEvaluador3);
proc.setString(19, observacionProfesor);
proc.setString(20, pathArchivoAdjunto);
proc.setString(21, resolucion);
proc.setString(22, temaTopico);
proc.setString(23, resultadoResolucion);
proc.setString(24, comentarioResolucion);

ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setEstado(rs.getString(1));
reg.setFechacreacion(rs.getTimestamp(2));
reg.setFechamodificacion(rs.getTimestamp(3));
reg.setFkIdDecano(rs.getInt(4));
reg.setFkIdEvaluador1(rs.getInt(5));
reg.setFkIdEvaluador2(rs.getInt(6));
reg.setFkIdEvaluador3(rs.getInt(7));
reg.setFkIdProfesor(rs.getInt(8));
reg.setFkParent(rs.getInt(9));
reg.setIdSolicitudApertura(rs.getInt(10));
reg.setInforme1(rs.getString(11));
reg.setInforme2(rs.getString(12));
reg.setInforme3(rs.getString(13));
reg.setNombreArchivo(rs.getString(14));
reg.setNombreinstanciaproceso(rs.getString(15));
reg.setObservacionDecano(rs.getString(16));
reg.setObservacionEvaluador1(rs.getString(17));
reg.setObservacionEvaluador2(rs.getString(18));
reg.setObservacionEvaluador3(rs.getString(19));
reg.setObservacionProfesor(rs.getString(20));
reg.setPathArchivoAdjunto(rs.getString(21));
reg.setResolucion(rs.getString(22));
reg.setTemaTopico(rs.getString(23));
reg.setResultadoResolucion(rs.getString(24));
reg.setComentarioResolucion(rs.getString(25));

}else reg=null;
return reg;


}

public Solicitudaperturatopico HLleerSolicitudaperturatopico(Solicitudaperturatopico val) throws SQLException{
return leerSolicitudaperturatopico(val.getIdSolicitudApertura());
}

public Vector<Solicitudaperturatopico> leerVariosSolicitudaperturatopico() throws SQLException{
Vector<Solicitudaperturatopico> datos=new Vector<Solicitudaperturatopico>();
Solicitudaperturatopico reg;

PreparedStatement proc=con.prepareStatement(
"call leerVariosSolicitudaperturatopico() ");
ResultSet rs=proc.executeQuery();
while (rs.next()) {
reg = new Solicitudaperturatopico();
reg.setEstado(rs.getString(1));
reg.setFechacreacion(rs.getTimestamp(2));
reg.setFechamodificacion(rs.getTimestamp(3));
reg.setFkIdDecano(rs.getInt(4));
reg.setFkIdEvaluador1(rs.getInt(5));
reg.setFkIdEvaluador2(rs.getInt(6));
reg.setFkIdEvaluador3(rs.getInt(7));
reg.setFkIdProfesor(rs.getInt(8));
reg.setFkParent(rs.getInt(9));
reg.setIdSolicitudApertura(rs.getInt(10));
reg.setInforme1(rs.getString(11));
reg.setInforme2(rs.getString(12));
reg.setInforme3(rs.getString(13));
reg.setNombreArchivo(rs.getString(14));
reg.setNombreinstanciaproceso(rs.getString(15));
reg.setObservacionDecano(rs.getString(16));
reg.setObservacionEvaluador1(rs.getString(17));
reg.setObservacionEvaluador2(rs.getString(18));
reg.setObservacionEvaluador3(rs.getString(19));
reg.setObservacionProfesor(rs.getString(20));
reg.setPathArchivoAdjunto(rs.getString(21));
reg.setResolucion(rs.getString(22));
reg.setTemaTopico(rs.getString(23));
reg.setResultadoResolucion(rs.getString(24));
reg.setComentarioResolucion(rs.getString(25));

datos.add(reg);
}//end while
return datos;


}

public Vector<Solicitudaperturatopico> HLleerVariosSolicitudaperturatopico(Solicitudaperturatopico val) throws SQLException{
return leerVariosSolicitudaperturatopico();
}

public boolean HLmodificarSolicitudaperturatopico(Solicitudaperturatopico val) throws SQLException{
return modificarSolicitudaperturatopico(val.getEstado(), val.getFechacreacion(), val.getFechamodificacion(), val.getFkIdDecano(), val.getFkIdEvaluador1(), val.getFkIdEvaluador2(), val.getFkIdEvaluador3(), val.getFkIdProfesor(), val.getFkParent(), val.getIdSolicitudApertura(), val.getInforme1(), val.getInforme2(), val.getInforme3(), val.getNombreArchivo(), val.getNombreinstanciaproceso(), val.getObservacionDecano(), val.getObservacionEvaluador1(), val.getObservacionEvaluador2(), val.getObservacionEvaluador3(), val.getObservacionProfesor(), val.getPathArchivoAdjunto(), val.getResolucion(), val.getTemaTopico(), val.getResultadoResolucion(), val.getComentarioResolucion());
}

public boolean modificarSolicitudaperturatopico(String estado, Timestamp fechacreacion, Timestamp fechamodificacion, int fkIdDecano, int fkIdEvaluador1,
        int fkIdEvaluador2, int fkIdEvaluador3, int fkIdProfesor, int fkParent, int idSolicitudApertura, String informe1, String informe2,
        String informe3, String nombreArchivo, String nombreinstanciaproceso, String observacionDecano, String observacionEvaluador1,
        String observacionEvaluador2, String observacionEvaluador3, String observacionProfesor, String pathArchivoAdjunto, String resolucion,
        String temaTopico, String resultadoResolucion, String comentarioResolucion) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call modificarSolicitudaperturatopico(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) ");
proc.setString(1, estado);
proc.setTimestamp(2, fechacreacion);
proc.setTimestamp(3, fechamodificacion);
proc.setInt(4, fkIdDecano);
proc.setInt(5, fkIdEvaluador1);
proc.setInt(6, fkIdEvaluador2);
proc.setInt(7, fkIdEvaluador3);
proc.setInt(8, fkIdProfesor);
proc.setInt(9, fkParent);
proc.setInt(10, idSolicitudApertura);
proc.setString(11, informe1);
proc.setString(12, informe2);
proc.setString(13, informe3);
proc.setString(14, nombreArchivo);
proc.setString(15, nombreinstanciaproceso);
proc.setString(16, observacionDecano);
proc.setString(17, observacionEvaluador1);
proc.setString(18, observacionEvaluador2);
proc.setString(19, observacionEvaluador3);
proc.setString(20, observacionProfesor);
proc.setString(21, pathArchivoAdjunto);
proc.setString(22, resolucion);
proc.setString(23, temaTopico);
proc.setString(24, resultadoResolucion);
proc.setString(25, comentarioResolucion);
proc.execute();
return exitoOperacion;


}

public boolean eliminarSolicitudaperturatopico(int idSolicitudApertura) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call eliminarSolicitudaperturatopico(?) ");
proc.setInt(1, idSolicitudApertura);
proc.execute();
return exitoOperacion;


}

public boolean HLeliminarSolicitudaperturatopico(Solicitudaperturatopico val) throws SQLException{
return eliminarSolicitudaperturatopico(val.getIdSolicitudApertura());
}

public void setConexion(Connection con) {
this.con=con;
}


}// FIN CLASE: ConsultasSolicitudaperturatopico
